///**  
//* @Title: SiteUserController.java
//* @Package com.house.service.controller
//* @version V1.0  
//*/ 
//package com.hjb.service.controller.user;
//
//import java.math.BigDecimal;
//import java.util.ArrayList;
//import java.util.Date;
//import java.util.HashMap;
//import java.util.List;
//import java.util.Map;
//import java.util.concurrent.ExecutorService;
//import java.util.concurrent.Executors;
//import java.util.regex.Matcher;
//import java.util.regex.Pattern;
//
//import javax.servlet.http.HttpServletRequest;
//
//import org.apache.commons.lang.StringUtils;
//import org.slf4j.Logger;
//import org.slf4j.LoggerFactory;
//import org.springframework.beans.factory.annotation.Autowired;
//import org.springframework.web.bind.annotation.RequestMapping;
//import org.springframework.web.bind.annotation.ResponseBody;
//import org.springframework.web.bind.annotation.RestController;
//
//import com.github.pagehelper.Page;
//import com.github.pagehelper.PageHelper;
//import com.hjb.service.annotation.LogInfo;
//import com.hjb.service.annotation.LogType;
//import com.hjb.service.com.ComLogInfoService;
//import com.hjb.service.com.ComMobileVersionService;
//import com.hjb.service.com.ComVerifyCodeService;
//import com.hjb.service.config.constant.ComLogInfoConstant;
//import com.hjb.service.config.constant.ComVerifyCodeConstant;
//import com.hjb.service.config.constant.ComVerifyCodeConstant.CodeBiz;
//import com.hjb.service.config.constant.ComVerifyCodeConstant.CodeChannel;
//import com.hjb.service.config.constant.HJBConstant;
//import com.hjb.service.coupon.CouponRuleService;
//import com.hjb.service.domain.comloginfo.ComLogInfo;
//import com.hjb.service.domain.commobileversion.ComMobileVersion;
//import com.hjb.service.domain.commobileversion.ComMobileVersionExample;
//import com.hjb.service.domain.comverifycode.ComVerifyCode;
//import com.hjb.service.domain.comverifycode.ComVerifyCodeExample;
//import com.hjb.service.domain.couponrule.CouponRule;
//import com.hjb.service.domain.couponrule.CouponRuleExample;
//import com.hjb.service.domain.siteuser.SiteUser;
//import com.hjb.service.domain.siteuser.SiteUserAccountLog;
//import com.hjb.service.domain.siteuser.SiteUserAccountLogExample;
//import com.hjb.service.domain.siteuser.SiteUserExample;
//import com.hjb.service.domain.siteuser.SiteUserLimit;
//import com.hjb.service.domain.siteuseraccount.SiteUserAccount;
//import com.hjb.service.domain.siteuseraccount.SiteUserAccountExample;
//import com.hjb.service.domain.siteusercoupon.SiteUserCoupon;
//import com.hjb.service.domain.siteusercoupon.SiteUserCouponExample;
//import com.hjb.service.domain.siteuserenvelop.SiteUserEnvelop;
//import com.hjb.service.domain.siteuserenvelop.SiteUserEnvelopExample;
//import com.hjb.service.product.ProductService;
//import com.hjb.service.user.SiteUserAccountLogService;
//import com.hjb.service.user.SiteUserAccountService;
//import com.hjb.service.user.SiteUserCouponService;
//import com.hjb.service.user.SiteUserCurrentService;
//import com.hjb.service.user.SiteUserEnvelopService;
//import com.hjb.service.user.SiteUserLimitService;
//import com.hjb.service.user.SiteUserService;
//import com.hjb.service.utils.DateUtil;
//import com.hjb.service.utils.HJBUT;
//import com.hjb.service.utils.MD5Utils;
//import com.hjb.service.utils.MapUtil;
//import com.hjb.service.utils.PwdStrengthUtil;
//import com.hjb.service.utils.RequestUtil;
//
///**
//* @ClassName: SiteUserController
//* @Description: TODO(用户信息)
//* @author <a href="mailto:125671254@qq.com">Pan Xinwen</a>
//* @date 2017年7月20日 下午4:02:26
//*/
//@RestController
//@RequestMapping("/siteuser/v1")
//public class SiteUserController {
//
//	private Logger log = LoggerFactory.getLogger(SiteUserController.class);
//	
//	@Autowired
//	private SiteUserService siteUserService;
//	
//	@Autowired
//	private SiteUserAccountService siteUserAccountService;
//	
//	@Autowired
//	private SiteUserLimitService siteUserLimitService;
//	
//	@Autowired
//	private SiteUserEnvelopService siteUserEnvelopService;
//	
//	@Autowired
//	private SiteUserCouponService siteUserCouponService;
//	
//	@Autowired
//	private CouponRuleService couponRuleService;
//	
//	@Autowired
//	private SiteUserAccountLogService siteUserAccountLogService;
//	
//	@Autowired
//	private ComLogInfoService comLogInfoService;
//	
//	@Autowired
//	private ComVerifyCodeService comVerifyCodeService;
//	
//	@Autowired
//	private ComMobileVersionService comMobileVersionService;
//	
//	@Autowired
//	private ProductService productService;
//	@Autowired
//	private SiteUserCurrentService siteUserCurrentService;
//	
//	private ExecutorService executorService = Executors.newFixedThreadPool(5);
//	
//	private Object lock = new Object();
//	
//	@LogInfo(logType=LogType.查询,operationContent="用户登录")
//	@RequestMapping("login")
//	@ResponseBody
//	public Object login(HttpServletRequest request){
//		
//		Map<String, Object> result = MapUtil.getRetMap();
//		Map<String, Object> data = new HashMap<String, Object>();
//		result.put("data", data);
//		
//		String loginName = request.getParameter("loginName");
//		//登录名为空
//		if (StringUtils.isBlank(loginName)) {
//			result.put("result_code", MapUtil.INTF_ERR_CODE_401);
//			result.put("result_info", "用户名为空");
//			return result;
//		}
//		
//		String loginPassword = request.getParameter("loginPassword");
//		//密码为空
//		if (StringUtils.isBlank(loginPassword)) {
//			result.put("result_code", MapUtil.INTF_ERR_CODE_402);
//			result.put("result_info", "密码为空");
//			return result;
//		}
//		
//		SiteUserExample siteUserExample = new SiteUserExample();
//		siteUserExample.createCriteria().andMobilePhoneEqualTo(loginName).andLoginPasswordEqualTo(MD5Utils.encrypt(loginPassword, false));
//		List<SiteUser> siteUserList = siteUserService.selectByExample(siteUserExample);
//		//用户名或密码错误
//		if (siteUserList == null || siteUserList.size() == 0) {
//			result.put("result_code", MapUtil.INTF_ERR_CODE_403);
//			result.put("result_info", "用户名或密码错误");
//			return result;
//		}
//		
//		SiteUser siteUser = siteUserList.get(0);
//		if (siteUser.getUserStatus() != null && siteUser.getUserStatus() == 2) {
//			result.put("result_code", MapUtil.INTF_ERR_CODE_414);
//			result.put("result_info", "用户被锁定");
//			return result;
//		}
//		
//		String ip = RequestUtil.getRemoteAddr(request);
//		executorService.execute(new Runnable() {
//			@Override
//			public void run() {
//				//登录记录
//				ComLogInfo comLogInfo = new ComLogInfo();
//				comLogInfo.setUserId(siteUser.getUserId().longValue());
//				comLogInfo.setEventType(ComLogInfoConstant.EVENT_TYPE.login.getType());
//				comLogInfo.setSuccess(ComLogInfoConstant.SUCCESS.YES.getCode());
//				comLogInfo.setDescription("成功");
//				comLogInfo.setOperateTime(new Date());
//				comLogInfo.setChannel(ComVerifyCodeConstant.CodeChannel.web.getV());
//				comLogInfo.setIp(ip);
//				comLogInfoService.insertComLogInfo(comLogInfo);
//			}
//		});
//		
//		request.getSession().setAttribute("siteUser", siteUser);
//		
//		data = ((Map<String, Object>) result.get("data"));
//		data.put("userId", siteUser.getUserId());
//		data.put("mobile", siteUser.getMobilePhone());
//		if (siteUser.getIsBindCard() != null && siteUser.getIsBindCard() != 0) {
//			data.put("isBindCard", 1);
//		}else {
//			data.put("isBindCard", 0);
//		}
//		if (siteUser.getTradePassword() != null && !"".equals(siteUser.getTradePassword())) {
//			data.put("isSetTradePassword", 1);
//		}else {
//			data.put("isSetTradePassword", 0);
//		}
//		if (siteUser.getBankCardNo() != null && !"".equals(siteUser.getBankCardNo())) {
//			if (siteUser.getBankCardNo().length() > 8) {
//				data.put("bankCardNo", siteUser.getBankCardNo().substring(0, 4) + "****" + siteUser.getBankCardNo().substring(8));
//			}else {
//				data.put("bankCardNo", siteUser.getBankCardNo());
//			}
//		}else {
//			data.put("bankCardNo", "");
//		}
//		
//		return result;
//	}
//	
//	@LogInfo(logType=LogType.新增,operationContent="用户注册")
//	@RequestMapping("register")
//	@ResponseBody
//	public Object register(HttpServletRequest request){
//		
//		Map<String, Object> result = MapUtil.getRetMap();
//		Map<String, Object> data = new HashMap<String, Object>();
//		result.put("data", data);
//		
//		Object object = request.getSession().getAttribute("registerPhoneNum");
//		//手机号过期
////		if (object == null/* || !(object instanceof String)*/) {
////			object = request.getParameter("loginName");
//			if (object == null || !(object instanceof String)) {
//				result.put("result_code", MapUtil.INTF_ERR_CODE_405);
//				result.put("result_info", "注册失败,获取不到手机号码,请在30分钟内完成注册");
//				return result;
//			}
////		}
//		
//		String loginPassword = request.getParameter("loginPassword");
//		//密码不能为空
//		if (StringUtils.isBlank(loginPassword)) {
//			result.put("result_code", MapUtil.INTF_ERR_CODE_402);
//			result.put("result_info", "密码为空");
//			return result;
//		}
//		
//		//密码长度6-16位
//		if (loginPassword.length() < 6 || loginPassword.length() > 16) {
//			result.put("result_code", MapUtil.INTF_ERR_CODE_406);
//			result.put("result_info", "密码长度应该在6-16位之间");
//			return result;
//		}
//		
//		synchronized (lock) {
//			String mobilePhone = (String) object;
//			SiteUserExample siteUserExample = new SiteUserExample();
//			siteUserExample.createCriteria().andMobilePhoneEqualTo(mobilePhone);
//			List<SiteUser> siteUserList = siteUserService.selectByExample(siteUserExample);
//			//手机号已注册
//			if (siteUserList != null && siteUserList.size() > 0) {
//				result.put("result_code", MapUtil.INTF_ERR_CODE_407);
//				result.put("result_info", "手机号已注册");
//				return result;
//			}
//			
//			String	verifyCode = request.getParameter("verifyCode");
//			//验证码不能为空
//			if (StringUtils.isBlank(verifyCode)) {
//				result.put("result_code", MapUtil.INTF_ERR_CODE_408);
//				result.put("result_info", "验证码为空");
//				return result;
//			}
//			
//			ComVerifyCodeExample comVerifyCodeExample = new ComVerifyCodeExample();
//			comVerifyCodeExample.createCriteria().andObjectIdEqualTo(mobilePhone).andChannelEqualTo(CodeChannel.web.name()).andBizEqualTo(CodeBiz.register.name());
//			List<ComVerifyCode> comVerifyCodeList = comVerifyCodeService.selectByExample(comVerifyCodeExample);
//			//验证码不存在
//			if (comVerifyCodeList == null || comVerifyCodeList.size() == 0) {
//				result.put("result_code", MapUtil.INTF_ERR_CODE_408);
//				result.put("result_info", "验证码不存在");
//				return result;
//			}
//			
//			//验证码不正确
//			if (!verifyCode.equals(comVerifyCodeList.get(0).getVerifyCode())) {
//				result.put("result_code", MapUtil.INTF_ERR_CODE_408);
//				result.put("result_info", "验证码不正确");
//				return result;
//			}
//			
//			Integer inviterSum = null;
//			Integer inviterUserId = null;
//			String inviterCode = request.getParameter("invitedCode");
//			if (!StringUtils.isBlank(inviterCode)) {
//				siteUserExample = new SiteUserExample();
//				siteUserExample.createCriteria().andInviteCodeEqualTo(inviterCode);
//				siteUserList = siteUserService.selectByExample(siteUserExample);
//				//邀请码不正确
//				if (siteUserList == null || siteUserList.size() == 0) {
//					siteUserExample = new SiteUserExample();
//					siteUserExample.createCriteria().andMobilePhoneEqualTo(inviterCode);
//					siteUserList = siteUserService.selectByExample(siteUserExample);
//					if (siteUserList == null || siteUserList.size() == 0) {
//						result.put("result_code", MapUtil.INTF_ERR_CODE_409);
//						result.put("result_info", "邀请码不正确");
//						return result;
//					}
//				}
//				inviterUserId = siteUserList.get(0).getUserId();
//				inviterSum = siteUserList.get(0).getInviteSum() == null ? 0 : siteUserList.get(0).getInviteSum();
//			}else {
//				inviterCode = "";
//			}
//			
//			int regChannel = 0;
//			if (!StringUtils.isBlank(request.getParameter("regChannel"))) {
//				regChannel = request.getParameter("regChannel").hashCode() - 48;
//				if (regChannel < 0) {
//					regChannel = - regChannel;
//				}
//			}
//			
//			String regSource = request.getParameter("regSource");
//			
//			SiteUser siteUser = new SiteUser();
////			siteUser.setRegisteType(regChannel);
////			if (regSource != null) {
////				if (regSource.length() > 50) {
////					regSource = regSource.substring(0, 49);
////				}
////				siteUser.setRegisteSource(regSource);
////			}
////			if (inviterUserId != null) {
////				siteUser.setInviterUserid(String.valueOf(inviterUserId));
////				siteUser.setInviterCode(inviterCode);
////			}
//			siteUser.setInviterCode("");
//			siteUser.setMobile(mobilePhone);
//			siteUser.setLoginPassword(MD5Utils.encrypt(loginPassword));
//			siteUser.setPwdStrength(PwdStrengthUtil.getPwdStrength(loginPassword));
//			siteUser.setIp(RequestUtil.getRemoteAddr());
////			siteUser.setIsCreditor(HJBConstant.YESINT);
//			siteUser.setCreateTime(new Date());
//			siteUser.setUserStatus(HJBConstant.UserStatus.NORMAL);
//			siteUser.setUserType(HJBConstant.UserDutyType.PERSONAL);
//			siteUser.setIsFirstUpdateLoginPassword(0); // 首次登录
//			siteUserService.insertSiteUser(siteUser);
//			
//			siteUserExample = new SiteUserExample();
//			siteUserExample.createCriteria().andMobileEqualTo(mobilePhone);
//			siteUserList = siteUserService.selectByExample(siteUserExample);
//			if (siteUserList != null && siteUserList.size() > 0) {
//				siteUser = siteUserList.get(0);
//			}
//			
//			request.getSession().removeAttribute("registerPhoneNum");
//			request.getSession().setAttribute("siteUser", siteUser);
//			
//			data = ((Map<String, Object>) result.get("data"));
//			data.put("userId", siteUser.getUserId());
//			data.put("mobile", siteUser.getMobilePhone());
//			if (siteUser.getIsBindCard() != null && siteUser.getIsBindCard() != 0) {
//				data.put("isBindCard", 1);
//			}else {
//				data.put("isBindCard", 0);
//			}
//			if (siteUser.getTradePassword() != null && !"".equals(siteUser.getTradePassword())) {
//				data.put("isSetTradePassword", 1);
//			}else {
//				data.put("isSetTradePassword", 0);
//			}
//			if (siteUser.getBankCardNo() != null && !"".equals(siteUser.getBankCardNo())) {
//				if (siteUser.getBankCardNo().length() > 8) {
//					data.put("bankCardNo", siteUser.getBankCardNo().substring(0, 4) + "****" + siteUser.getBankCardNo().substring(8));
//				}else {
//					data.put("bankCardNo", siteUser.getBankCardNo());
//				}
//			}else {
//				data.put("bankCardNo", "");
//			}
//			
//			//TODO 注册初始化，活动等相关
//			registerInit(siteUser, inviterUserId, inviterSum);
//		}
//		
//		return result;
//	}
//	
//	/**
//	 * 注册初始化
//	 * @param userId
//	 * @param inviterUserId
//	 * @param inviterSum
//	 */
//	public void registerInit(SiteUser siteUser, Integer inviterUserId, Integer inviterSum) {
//		executorService.execute(new Runnable() {
//			@Override
//			public void run() {
//				//用户账号初始化
//				SiteUserAccount siteUserAccount = new SiteUserAccount();
//				siteUserAccount.setUserId(siteUser.getUserId());
//				siteUserAccount.setTotalAsset(new BigDecimal("0.0000"));
//				siteUserAccount.setCurrentAccount(new BigDecimal("0.0000"));
//				siteUserAccount.setFrozenAccount(new BigDecimal("0.0000"));
//				siteUserAccount.setFixedAccount(new BigDecimal("0.0000"));
//				siteUserAccount.setFixedExpectIncome(new BigDecimal("0.0000"));
//				siteUserAccount.setFixedExpectPrinciple(new BigDecimal("0.0000"));
//				siteUserAccount.setFixedExpectInterest(new BigDecimal("0.0000"));
//				siteUserAccount.setFixedExpectAddInterest(new BigDecimal("0.0000"));
//				siteUserAccount.setFixedExpectCoupon(new BigDecimal("0.0000"));
//				siteUserAccount.setFixedExpectTip(new BigDecimal("0.0000"));
//				siteUserAccount.setTotalIncome(new BigDecimal("0.0000"));
//				siteUserAccount.setTotalCurrentIncome(new BigDecimal("0.0000"));
//				siteUserAccount.setTotalCurrentOriginalIncome(new BigDecimal("0.0000"));
//				siteUserAccount.setTotalCurrentCouponIncome(new BigDecimal("0.0000"));
//				siteUserAccount.setTotalOtherIncome(new BigDecimal("0.0000"));
//				siteUserAccount.setTotalInviteIncome(new BigDecimal("0.0000"));
//				siteUserAccount.setTotalCurrentInvest(new BigDecimal("0.0000"));
//				siteUserAccount.setTotalFixedInvest(new BigDecimal("0.0000"));
//				siteUserAccount.setTotalFixedIncome(new BigDecimal("0.0000"));
//				siteUserAccount.setTotalFixedInterest(new BigDecimal("0.0000"));
//				siteUserAccount.setTotalFixedAddInterest(new BigDecimal("0.0000"));
//				siteUserAccount.setTotalFixedCoupon(new BigDecimal("0.0000"));
//				siteUserAccount.setTotalFixedTip(new BigDecimal("0.0000"));
//				siteUserAccount.setTotalRecharge(new BigDecimal("0.0000"));
//				siteUserAccountService.insertSiteUserAccount(siteUserAccount);
//				
//				//注册送加息券
//				CouponRuleExample couponRuleExample = new CouponRuleExample();
//				couponRuleExample.createCriteria().andStatusEqualTo(0).andTypeEqualTo(1);
//				couponRuleExample.or().andStatusEqualTo(0).andTypeEqualTo(2);
//				List<CouponRule> couponRuleList = couponRuleService.selectByExample(couponRuleExample);
//				if (couponRuleList != null && couponRuleList.size() > 0) {
//					for (CouponRule couponRule : couponRuleList) {
//						SiteUserCoupon siteUserCoupon = new SiteUserCoupon();
//						siteUserCoupon.setUserId(siteUser.getUserId().longValue());
//						siteUserCoupon.setStatus(0);
//						siteUserCoupon.setType(couponRule.getType());
//						siteUserCoupon.setName(couponRule.getName());
//						siteUserCoupon.setProductType(couponRule.getProductType());
//						siteUserCoupon.setAmount(couponRule.getAmount());
//						siteUserCoupon.setActiveDays(couponRule.getActiveDays());
//						siteUserCoupon.setInvestTimeType(couponRule.getInvestTimeType());
//						siteUserCoupon.setMinInvestTime(couponRule.getMinInvestTime());
//						siteUserCoupon.setMaxInvestTime(couponRule.getMaxInvestTime());
//						siteUserCoupon.setMinInvestAmount(couponRule.getMinInvestAmount());
//						siteUserCoupon.setMaxInvestAmount(couponRule.getMaxInvestAmount());
//						siteUserCoupon.setCreateTime(new Date());
//						siteUserCoupon.setBeginTime(new Date());
//						if (couponRule.getExpiredDays() != null) {
//							siteUserCoupon.setEndTime(DateUtil.getTimeAt23(couponRule.getExpiredDays()));
//						}
//						siteUserCouponService.insertSiteUserCoupon(siteUserCoupon);
//					}
//				}
//				
//				//用户提现限额
//				Map<String, Object> map = new HashMap<String, Object>();
//				map.put("type", "0");
//				List<Map<String, Object>> productList = productService.getProductList(map);
//				if (productList != null && productList.size() > 0) {
//					Map<String, Object> product = productList.get(0);
//					SiteUserLimit siteUserLimit = new SiteUserLimit();
//					siteUserLimit.setUserId(siteUser.getUserId());
//					siteUserLimit.setDayLimit((BigDecimal) product.get("maxDaily"));
//					siteUserLimit.setMonthLimit((BigDecimal) product.get("maxMonthly"));
//					siteUserLimit.setSingleLimit((BigDecimal) product.get("maxRedeem"));
//					siteUserLimit.setCreateTime(new Date());
//					siteUserLimit.setFreeNum((Integer) product.get("maxNumber"));
//					siteUserLimitService.insertSiteUserLimit(siteUserLimit);
//				}
//				
//				//邀请人账号人数更新
//				if (inviterUserId != null && inviterSum != null) {
//					SiteUser inviterSiteUser = new SiteUser();
//					inviterSiteUser.setUserId(inviterUserId);
//					int sum = inviterSum + 1;
//					inviterSiteUser.setInviteSum(sum);
//					siteUserService.updateSiteUser(inviterSiteUser);
//				}
//				
//				//生成自己的邀请码
//				List<SiteUser> siteUserList = null;
//				String inviteCode = "";
//				do {
//					inviteCode = HJBUT.getRandomCode(6);
//					SiteUserExample siteUserExample = new SiteUserExample();
//					siteUserExample.createCriteria().andInviteCodeEqualTo(inviteCode);
//					siteUserList = siteUserService.selectByExample(siteUserExample);
//				} while (siteUserList != null && siteUserList.size() > 0);
//				siteUser.setInviteCode(inviteCode);
//				SiteUser tempSiteUser = new SiteUser();
//				tempSiteUser.setUserId(siteUser.getUserId());
//				tempSiteUser.setInviteCode(inviteCode);
//				siteUserService.updateSiteUser(tempSiteUser);
//			}
//		});
//	}
//	
//	@LogInfo(logType=LogType.新增,operationContent="用户发送短信验证码")
//	@RequestMapping("send_msg")
//	@ResponseBody
//	public Object sendMsg(HttpServletRequest request){
//		
//		Map<String, Object> result = MapUtil.getRetMap();
//		Map<String, Object> data = new HashMap<String, Object>();
//		result.put("data", data);
//		
//		String mobilePhone = request.getParameter("mobilePhone");
//		//登录名为空
//		if (StringUtils.isBlank(mobilePhone)) {
//			result.put("result_code", MapUtil.INTF_ERR_CODE_406);
//			result.put("result_info", "手机号为空");
//			return result;
//		}
//		
////		Pattern p = Pattern.compile("^((13[0-9])|(15[^4,\\D])|(18[0,5-9]))\\d{8}$");  
//		Pattern pattern = Pattern.compile("^\\d{11}$");
//		Matcher matcher = pattern.matcher(mobilePhone);
//		//手机号不符
//		if (!matcher.matches()) {
//			result.put("result_code", MapUtil.INTF_ERR_CODE_404);
//			result.put("result_info", "手机号格式不符");
//			return result;
//		}
//		
//		// 验证完成发送语音验证码
//		ComVerifyCode cvc = new ComVerifyCode();
//		cvc.setObjectId(mobilePhone);
//		cvc.setBiz(CodeBiz.register.name());
//		cvc.setChannel(CodeChannel.web.name());
//		cvc.setCreateTime(new Date());
//		cvc.setIp(RequestUtil.getRemoteAddr(request));
//		cvc.setType(0); // 文本短信
//		
//		if (comVerifyCodeService.sendShorMsgVerifyCode(cvc)) {
//			request.getSession().setAttribute("registerPhoneNum", mobilePhone);
//			result.put("result_info", "短信验证码已发送，请注意查收！");
//		} else {
//			result.put("result_code", MapUtil.INTF_ERR_CODE_408);
//			result.put("result_info", "60秒之内只能获取一次验证码！");
//		}
//		return result;
//	}
//	
//	@LogInfo(logType=LogType.新增,operationContent="用户忘记密码第一步")
//	@RequestMapping("forget_password_step1")
//	@ResponseBody
//	public Object forgetPasswordStep1(HttpServletRequest request){
//		
//		Map<String, Object> result = MapUtil.getRetMap();
//		Map<String, Object> data = new HashMap<String, Object>();
//		result.put("data", data);
//		
//		Object object = request.getSession().getAttribute("registerPhoneNum");
//		//手机号过期
////		if (object == null/* || !(object instanceof String)*/) {
////			object = request.getParameter("mobilePhone");
//			if (object == null || !(object instanceof String)) {
//				result.put("result_code", MapUtil.INTF_ERR_CODE_405);
//				result.put("result_info", "验证码过期");
//				return result;
//			}
////		}
//		
//		String mobilePhone = (String) object;
//		SiteUserExample siteUserExample = new SiteUserExample();
//		siteUserExample.createCriteria().andMobilePhoneEqualTo(mobilePhone);
//		List<SiteUser> siteUserList = siteUserService.selectByExample(siteUserExample);
//		//手机号不存在
//		if (siteUserList == null || siteUserList.size() == 0) {
//			result.put("result_code", MapUtil.INTF_ERR_CODE_410);
//			result.put("result_info", "手机号不存在");
//			return result;
//		}
//		
//		String	verifyCode = request.getParameter("verifyCode");
//		//验证码不能为空
//		if (StringUtils.isBlank(verifyCode)) {
//			result.put("result_code", MapUtil.INTF_ERR_CODE_408);
//			result.put("result_info", "验证码为空");
//			return result;
//		}
//		
//		ComVerifyCodeExample comVerifyCodeExample = new ComVerifyCodeExample();
//		comVerifyCodeExample.createCriteria().andObjectIdEqualTo(mobilePhone).andChannelEqualTo(CodeChannel.web.name()).andBizEqualTo(CodeBiz.register.name());
//		List<ComVerifyCode> comVerifyCodeList = comVerifyCodeService.selectByExample(comVerifyCodeExample);
//		//验证码不存在
//		if (comVerifyCodeList == null || comVerifyCodeList.size() == 0) {
//			result.put("result_code", MapUtil.INTF_ERR_CODE_408);
//			result.put("result_info", "验证码不存在");
//			return result;
//		}
//		
//		//验证码不正确
//		if (!verifyCode.equals(comVerifyCodeList.get(0).getVerifyCode())) {
//			result.put("result_code", MapUtil.INTF_ERR_CODE_408);
//			result.put("result_info", "验证码不正确");
//			return result;
//		}
//		return result;
//	}
//	
//	@LogInfo(logType=LogType.新增,operationContent="用户忘记密码第二步")
//	@RequestMapping("forget_password_step2")
//	@ResponseBody
//	public Object forgetPasswordStep2(HttpServletRequest request){
//		
//		Map<String, Object> result = (Map<String, Object>) forgetPasswordStep1(request);
//		if (!result.get("result_code").equals(MapUtil.INTF_SUC_CODE)) {
//			return result;
//		}
//		
//		String	newPassword = request.getParameter("newPassword");
//		//新密码不能为空
//		if (StringUtils.isBlank(newPassword)) {
//			result.put("result_code", MapUtil.INTF_ERR_CODE_411);
//			result.put("result_info", "新密码为空");
//			return result;
//		}
//		
//		//密码长度6-16位
//		if (newPassword.length() < 6 || newPassword.length() > 16) {
//			result.put("result_code", MapUtil.INTF_ERR_CODE_406);
//			result.put("result_info", "密码长度应该在6-16位之间");
//			return result;
//		}
//		
//		String	twicePassword = request.getParameter("twicePassword");
//		//确认新密码不能为空
//		if (StringUtils.isBlank(twicePassword)) {
//			result.put("result_code", MapUtil.INTF_ERR_CODE_412);
//			result.put("result_info", "确认新密码为空");
//			return result;
//		}
//		
//		//新密码与确认新密码不相同
//		if (!newPassword.equals(twicePassword)) {
//			result.put("result_code", MapUtil.INTF_ERR_CODE_413);
//			result.put("result_info", "新密码与确认新密码不相同");
//			return result;
//		}
//		
//		Object object = request.getSession().getAttribute("registerPhoneNum");
//		//手机号过期
////		if (object == null/* || !(object instanceof String)*/) {
////			object = request.getParameter("mobilePhone");
//			if (object == null || !(object instanceof String)) {
//				result.put("result_code", MapUtil.INTF_ERR_CODE_405);
//				result.put("result_info", "验证码过期");
//				return result;
//			}
////		}
//		
//		String mobilePhone = (String) object;
//		SiteUserExample siteUserExample = new SiteUserExample();
//		siteUserExample.createCriteria().andMobilePhoneEqualTo(mobilePhone);
//		List<SiteUser> siteUserList = siteUserService.selectByExample(siteUserExample);
//		//手机号不存在
//		if (siteUserList == null || siteUserList.size() == 0) {
//			result.put("result_code", MapUtil.INTF_ERR_CODE_410);
//			result.put("result_info", "手机号不存在");
//			return result;
//		}
//		
//		SiteUser temp = new SiteUser();
//		temp.setUserId(siteUserList.get(0).getUserId());
//		temp.setLoginPassword(MD5Utils.encrypt(newPassword));
//		temp.setPwdStrength(PwdStrengthUtil.getPwdStrength(newPassword));
//		temp.setUpdateTime(new Date());
//		siteUserService.updateSiteUser(temp);
//		
//		request.getSession().removeAttribute("registerPhoneNum");
//		
//		SiteUser siteUser = (SiteUser) request.getSession().getAttribute("siteUser");
//		if (siteUser != null) {
//			siteUser.setLoginPassword(temp.getLoginPassword());
//			siteUser.setPwdStrength(temp.getPwdStrength());
//			siteUser.setUpdateTime(temp.getUpdateTime());
//		}
//		return result;
//	}
//	
//	@LogInfo(logType=LogType.新增,operationContent="用户忘记交易密码第一步")
//	@RequestMapping("forget_trade_password_step1")
//	@ResponseBody
//	public Object forgetTradePasswordStep1(HttpServletRequest request){
//		
//		Map<String, Object> result = MapUtil.getRetMap();
//		Map<String, Object> data = new HashMap<String, Object>();
//		result.put("data", data);
//		
//		//会话过期
//		if (request.getSession().getAttribute("siteUser") == null) {
//			result.put("result_code", MapUtil.INTF_ERR_CODE_416);
//			result.put("result_info", "会话过期");
//			return result;
//		}
//		
//		Object object = request.getSession().getAttribute("registerPhoneNum");
//		//手机号过期
////		if (object == null/* || !(object instanceof String)*/) {
////			object = request.getParameter("mobilePhone");
//			if (object == null || !(object instanceof String)) {
//				result.put("result_code", MapUtil.INTF_ERR_CODE_405);
//				result.put("result_info", "验证码过期");
//				return result;
//			}
////		}
//		
//		String mobilePhone = (String) object;
//		SiteUserExample siteUserExample = new SiteUserExample();
//		siteUserExample.createCriteria().andMobilePhoneEqualTo(mobilePhone);
//		List<SiteUser> siteUserList = siteUserService.selectByExample(siteUserExample);
//		//手机号不存在
//		if (siteUserList == null || siteUserList.size() == 0) {
//			result.put("result_code", MapUtil.INTF_ERR_CODE_410);
//			result.put("result_info", "手机号不存在");
//			return result;
//		}
//		
//		String	verifyCode = request.getParameter("verifyCode");
//		//验证码不能为空
//		if (StringUtils.isBlank(verifyCode)) {
//			result.put("result_code", MapUtil.INTF_ERR_CODE_408);
//			result.put("result_info", "验证码为空");
//			return result;
//		}
//		
//		ComVerifyCodeExample comVerifyCodeExample = new ComVerifyCodeExample();
//		comVerifyCodeExample.createCriteria().andObjectIdEqualTo(mobilePhone).andChannelEqualTo(CodeChannel.web.name()).andBizEqualTo(CodeBiz.register.name());
//		List<ComVerifyCode> comVerifyCodeList = comVerifyCodeService.selectByExample(comVerifyCodeExample);
//		//验证码不存在
//		if (comVerifyCodeList == null || comVerifyCodeList.size() == 0) {
//			result.put("result_code", MapUtil.INTF_ERR_CODE_408);
//			result.put("result_info", "验证码不存在");
//			return result;
//		}
//		
//		//验证码不正确
//		if (!verifyCode.equals(comVerifyCodeList.get(0).getVerifyCode())) {
//			result.put("result_code", MapUtil.INTF_ERR_CODE_408);
//			result.put("result_info", "验证码不正确");
//			return result;
//		}
//		return result;
//	}
//	
//	@LogInfo(logType=LogType.新增,operationContent="用户忘记交易密码第二步")
//	@RequestMapping("forget_trade_password_step2")
//	@ResponseBody
//	public Object forgetTradePasswordStep2(HttpServletRequest request){
//		
//		Map<String, Object> result = (Map<String, Object>) forgetTradePasswordStep1(request);
//		if (!result.get("result_code").equals(MapUtil.INTF_SUC_CODE)) {
//			return result;
//		}
//		
//		String	newPassword = request.getParameter("newPassword");
//		//新密码不能为空
//		if (StringUtils.isBlank(newPassword)) {
//			result.put("result_code", MapUtil.INTF_ERR_CODE_411);
//			result.put("result_info", "新密码为空");
//			return result;
//		}
//		
//		//密码长度6位
//		if (newPassword.length() != 6) {
//			result.put("result_code", MapUtil.INTF_ERR_CODE_406);
//			result.put("result_info", "密码长度必须为6位数字");
//			return result;
//		}
//		
//		Pattern pattern = Pattern.compile("^\\d{6}$");
//		Matcher matcher = pattern.matcher(newPassword);
//		//密码长度6位数字
//		if (!matcher.matches()) {
//			result.put("result_code", MapUtil.INTF_ERR_CODE_406);
//			result.put("result_info", "密码长度必须为6位数字");
//			return result;
//		}
//		
//		String	twicePassword = request.getParameter("twicePassword");
//		//确认新密码不能为空
//		if (StringUtils.isBlank(twicePassword)) {
//			result.put("result_code", MapUtil.INTF_ERR_CODE_412);
//			result.put("result_info", "确认新密码为空");
//			return result;
//		}
//		
//		//新密码与确认新密码不相同
//		if (!newPassword.equals(twicePassword)) {
//			result.put("result_code", MapUtil.INTF_ERR_CODE_413);
//			result.put("result_info", "新密码与确认新密码不相同");
//			return result;
//		}
//		
//		Object object = request.getSession().getAttribute("registerPhoneNum");
//		//手机号过期
////		if (object == null/* || !(object instanceof String)*/) {
////			object = request.getParameter("mobilePhone");
//			if (object == null || !(object instanceof String)) {
//				result.put("result_code", MapUtil.INTF_ERR_CODE_405);
//				result.put("result_info", "验证码过期");
//				return result;
//			}
////		}
//		
//		String mobilePhone = (String) object;
//		SiteUserExample siteUserExample = new SiteUserExample();
//		siteUserExample.createCriteria().andMobilePhoneEqualTo(mobilePhone);
//		List<SiteUser> siteUserList = siteUserService.selectByExample(siteUserExample);
//		//手机号不存在
//		if (siteUserList == null || siteUserList.size() == 0) {
//			result.put("result_code", MapUtil.INTF_ERR_CODE_410);
//			result.put("result_info", "手机号不存在");
//			return result;
//		}
//		
//		SiteUser temp = new SiteUser();
//		temp.setUserId(siteUserList.get(0).getUserId());
//		temp.setTradePassword(MD5Utils.encrypt(newPassword));
////		temp.setPwdStrength(PwdStrengthUtil.getPwdStrength(newPassword));
//		temp.setUpdateTime(new Date());
//		siteUserService.updateSiteUser(temp);
//		
//		request.getSession().removeAttribute("registerPhoneNum");
//		
//		SiteUser siteUser = (SiteUser) request.getSession().getAttribute("siteUser");
//		if (siteUser != null) {
//			siteUser.setTradePassword(temp.getTradePassword());
//			siteUser.setUpdateTime(temp.getUpdateTime());
//		}
//		return result;
//	}
//	
//	@LogInfo(logType=LogType.查询,operationContent="获取版本号")
//	@RequestMapping("get_version")
//	@ResponseBody
//	public Object getVersion(HttpServletRequest request){
//		Map<String, Object> result = MapUtil.getRetMap();
//		Map<String, Object> data = new HashMap<String, Object>();
//		result.put("data", data);
//		
//		int type = 1;
//		if (StringUtils.isNotBlank(request.getParameter("type"))) {
//			type = Integer.parseInt(request.getParameter("type"));
//		}
//		
//		ComMobileVersionExample comMobileVersionExample = new ComMobileVersionExample();
//		comMobileVersionExample.createCriteria().andTypeEqualTo(type).andStatusEqualTo(1);
//		List<ComMobileVersion> comMobileVersionList = comMobileVersionService.selectByExample(comMobileVersionExample);
//		if (comMobileVersionList == null || comMobileVersionList.size() == 0) {
//			result.put("result_code", MapUtil.INTF_ERR_CODE_415);
//			result.put("result_info", "参数有误");
//			return result;
//		}
//		
//		data = ((Map<String, Object>) result.get("data"));
//		ComMobileVersion comMobileVersion = comMobileVersionList.get(0);
//		data.put("type", comMobileVersion.getType());
//		data.put("verNo", comMobileVersion.getVerNo());
//		data.put("title", comMobileVersion.getTitle());
//		data.put("url", comMobileVersion.getUrl());
//		data.put("isForce", comMobileVersion.getIsForce());
//		data.put("remark", comMobileVersion.getRemark());
//		return result;
//	}
//	
//	@LogInfo(logType=LogType.修改,operationContent="风险测评结果")
//	@RequestMapping("risk_evaluation")
//	@ResponseBody
//	public Object riskEvaluation(HttpServletRequest request){
//		Map<String, Object> result = MapUtil.getRetMap();
//		Map<String, Object> data = new HashMap<String, Object>();
//		result.put("data", data);
//		
//		SiteUser siteUser = (SiteUser) request.getSession().getAttribute("siteUser");
//		//会话过期
//		if (siteUser == null) {
//			String userId = request.getParameter("userId");
//			if (userId == null || "".equals(userId)) {
//				result.put("result_code", MapUtil.INTF_ERR_CODE_415);
//				result.put("result_info", "参数有误");
//				return result;
//			}
//			SiteUserExample siteUserExample = new SiteUserExample();
//			siteUserExample.createCriteria().andUserIdEqualTo(Integer.valueOf(userId));
//			List<SiteUser> siteUserList = siteUserService.selectByExample(siteUserExample);
//			if (siteUserList == null || siteUserList.size() == 0) {
//				result.put("result_code", MapUtil.INTF_ERR_CODE_415);
//				result.put("result_info", "参数有误");
//				return result;
//			}
//			siteUser = siteUserList.get(0);
//			/*result.put("result_code", MapUtil.INTF_ERR_CODE_416);
//			result.put("result_info", "会话过期");
//			return result;*/
//		}
//		
//		int score = 0;
//		if (StringUtils.isNotBlank(request.getParameter("score"))) {
//			score = Integer.parseInt(request.getParameter("score"));
//		}
//		String answer = request.getParameter("answer");
//		
//		//参数有误
//		if (score < 0) {
//			result.put("result_code", MapUtil.INTF_ERR_CODE_415);
//			result.put("result_info", "参数有误");
//			return result;
//		}
//		
//		int riskLevel = 0;
//		String riskType = "";
//		if (score < 21) {
//			riskLevel = 1;
//			riskType = "保守型";
//		}else if (score < 41) {
//			riskLevel = 2;
//			riskType = "谨慎型";
//		}else if (score < 61) {
//			riskLevel = 3;
//			riskType = "稳健型";
//		}else if (score < 81) {
//			riskLevel = 4;
//			riskType = "积极型";
//		}else if (score < 101) {
//			riskLevel = 5;
//			riskType = "进取型";
//		}else {
//			riskLevel = 1;
//			riskType = "保守型";
//		}
//		
//		SiteUser temp = new SiteUser();
//		temp.setUserId(siteUser.getUserId());
//		temp.setRiskLevel(riskLevel);
//		siteUserService.updateSiteUser(temp);
//		
//		siteUser.setRiskLevel(riskLevel);
//		log.info("用户" + siteUser.getMobilePhone() + "风险测评分数为" + score + "选择的内容为" + answer + "属于" + riskType);
//		
//		data = ((Map<String, Object>) result.get("data"));
//		data.put("riskLevel", riskLevel);
//		data.put("riskType", riskType);
//		return result;
//	}
//	
//	@LogInfo(logType=LogType.查询,operationContent="我的账户信息")
//	@RequestMapping("my_account")
//	@ResponseBody
//	public Object myAccount(HttpServletRequest request){
//		Map<String, Object> result = MapUtil.getRetMap();
//		Map<String, Object> data = new HashMap<String, Object>();
//		result.put("data", data);
//		
//		SiteUser siteUser = (SiteUser) request.getSession().getAttribute("siteUser");
//		//会话过期
//		if (siteUser == null) {
//			result.put("result_code", MapUtil.INTF_ERR_CODE_416);
//			result.put("result_info", "会话过期");
//			return result;
//		}
//		
//		SiteUserAccountExample siteUserAccountExample = new SiteUserAccountExample();
//		siteUserAccountExample.createCriteria().andUserIdEqualTo(siteUser.getUserId());
//		List<SiteUserAccount> siteUserAccountList = siteUserAccountService.selectByExample(siteUserAccountExample);
//		if (siteUserAccountList == null || siteUserAccountList.size() == 0) {
//			result.put("result_code", MapUtil.INTF_ERR_CODE_415);
//			result.put("result_info", "用户不存在");
//			return result;
//		}
//		SiteUserAccount siteUserAccount = siteUserAccountList.get(0);
//		
//		SiteUserEnvelopExample siteUserEnvelopExample = new SiteUserEnvelopExample();
//		siteUserEnvelopExample.createCriteria().andUserIdEqualTo(siteUser.getUserId().longValue()).andStatusEqualTo(0);
//		int envelopCount = siteUserEnvelopService.countByExample(siteUserEnvelopExample);
//		
//		SiteUserCouponExample siteUserCouponExample = new SiteUserCouponExample();
//		siteUserCouponExample.createCriteria().andUserIdEqualTo(siteUser.getUserId().longValue()).andStatusEqualTo(0);
//		int couponCount = siteUserCouponService.countByExample(siteUserCouponExample);
//		
//		String name = siteUser.getMobilePhone();
//		if (siteUser.getRealName() != null) {
//			name = siteUser.getRealName();
//		}
//		//活期持总额 = 活期持有 + 购买未转入 
//		BigDecimal totalCurrentAccount = siteUserAccount.getCurrentAccount();
//		//购买未转入金额
//		BigDecimal totalCurrent = siteUserCurrentService.queryTotalCurrentByUserId(String.valueOf(siteUser.getUserId()));
//		if(totalCurrent !=null){
//			totalCurrentAccount = totalCurrentAccount.add(totalCurrent);
//		}
//		
//		data = ((Map<String, Object>) result.get("data"));
//		data.put("name", name);
//		data.put("totalIncome", String.valueOf(siteUserAccount.getTotalIncome().setScale(2)));
//		data.put("totalAsset", String.valueOf(siteUserAccount.getTotalAsset().setScale(2)));
//		data.put("myCurrent", String.valueOf(totalCurrentAccount.setScale(2)));
//		data.put("myFix", String.valueOf(siteUserAccount.getFixedAccount().setScale(2)));
//		data.put("envelopCount", envelopCount);
//		data.put("couponCount", couponCount);
//		data.put("experienceCash", String.valueOf(siteUserAccount.getExperienceAccount().setScale(2)));
//		data.put("myInvite", siteUser.getInviteSum());
//		data.put("myInviteCode", siteUser.getInviteCode());
//		int isBindCard = 0;
//		if (siteUser.getIsBindCard() != null && siteUser.getIsBindCard() != 0) {
//			isBindCard = 1;
//		}
//		data.put("isBindCard", isBindCard);
//		if (siteUser.getBankCardNo() != null && !"".equals(siteUser.getBankCardNo())) {
//			if (siteUser.getBankCardNo().length() > 8) {
//				data.put("bankCardNo", siteUser.getBankCardNo().substring(0, 4) + "****" + siteUser.getBankCardNo().substring(8));
//			}else {
//				data.put("bankCardNo", siteUser.getBankCardNo());
//			}
//		}else {
//			data.put("bankCardNo", "");
//		}
//		String riskEvaluation = "去测评";
//		if (siteUser.getRiskLevel() != null) {
//			if (siteUser.getRiskLevel() == 1) {
//				riskEvaluation = "保守型";
//			}else if (siteUser.getRiskLevel() == 2) {
//				riskEvaluation = "谨慎型";
//			}else if (siteUser.getRiskLevel() == 3) {
//				riskEvaluation = "稳健型";
//			}else if (siteUser.getRiskLevel() == 4) {
//				riskEvaluation = "积极型";
//			}else if (siteUser.getRiskLevel() == 5) {
//				riskEvaluation = "进取型";
//			}
//		}
//		data.put("riskEvaluation", riskEvaluation);
//		return result;
//	}
//	
//	@LogInfo(logType=LogType.查询,operationContent="累计收益")
//	@RequestMapping("total_income")
//	@ResponseBody
//	public Object totalIncome(HttpServletRequest request){
//		Map<String, Object> result = MapUtil.getRetMap();
//		Map<String, Object> data = new HashMap<String, Object>();
//		result.put("data", data);
//		
//		SiteUser siteUser = (SiteUser) request.getSession().getAttribute("siteUser");
//		//会话过期
//		if (siteUser == null) {
//			result.put("result_code", MapUtil.INTF_ERR_CODE_416);
//			result.put("result_info", "会话过期");
//			return result;
//		}
//		
//		SiteUserAccountExample siteUserAccountExample = new SiteUserAccountExample();
//		siteUserAccountExample.createCriteria().andUserIdEqualTo(siteUser.getUserId());
//		List<SiteUserAccount> siteUserAccountList = siteUserAccountService.selectByExample(siteUserAccountExample);
//		if (siteUserAccountList == null || siteUserAccountList.size() == 0) {
//			result.put("result_code", MapUtil.INTF_ERR_CODE_415);
//			result.put("result_info", "用户不存在");
//			return result;
//		}
//		SiteUserAccount siteUserAccount = siteUserAccountList.get(0);
//		
//		data = ((Map<String, Object>) result.get("data"));
//		data.put("totalIncome", String.valueOf(siteUserAccount.getTotalIncome().setScale(2)));
//		
//		data.put("otherIncome", String.valueOf(siteUserAccount.getTotalOtherIncome().setScale(2)));
//		
//		data.put("currentIncome", String.valueOf(siteUserAccount.getTotalCurrentIncome().setScale(2)));
//		data.put("currentOriginalIncome", String.valueOf(siteUserAccount.getTotalCurrentOriginalIncome().setScale(2)));
//		data.put("currentCouponIncome", String.valueOf(siteUserAccount.getTotalCurrentCouponIncome().setScale(2)));
//		
//		data.put("fixIncome", String.valueOf(siteUserAccount.getTotalFixedIncome().setScale(2)));
//		data.put("fixProjectIncome", String.valueOf(siteUserAccount.getTotalFixedInterest().setScale(2)));
//		data.put("fixPlatformIncome", String.valueOf(siteUserAccount.getTotalFixedAddInterest().setScale(2)));
//		data.put("fixCouponIncome", String.valueOf(siteUserAccount.getTotalFixedCoupon().setScale(2)));
//		data.put("fixEnvelopIncome", String.valueOf(siteUserAccount.getTotalFixedTip().setScale(2)));
//		return result;
//	}
//	
//	@LogInfo(logType=LogType.查询,operationContent="总资产")
//	@RequestMapping("total_asset")
//	@ResponseBody
//	public Object totalAsset(HttpServletRequest request){
//		Map<String, Object> result = MapUtil.getRetMap();
//		Map<String, Object> data = new HashMap<String, Object>();
//		result.put("data", data);
//		
//		SiteUser siteUser = (SiteUser) request.getSession().getAttribute("siteUser");
//		//会话过期
//		if (siteUser == null) {
//			result.put("result_code", MapUtil.INTF_ERR_CODE_416);
//			result.put("result_info", "会话过期");
//			return result;
//		}
//		
//		SiteUserAccountExample siteUserAccountExample = new SiteUserAccountExample();
//		siteUserAccountExample.createCriteria().andUserIdEqualTo(siteUser.getUserId());
//		List<SiteUserAccount> siteUserAccountList = siteUserAccountService.selectByExample(siteUserAccountExample);
//		if (siteUserAccountList == null || siteUserAccountList.size() == 0) {
//			result.put("result_code", MapUtil.INTF_ERR_CODE_415);
//			result.put("result_info", "用户不存在");
//			return result;
//		}
//		SiteUserAccount siteUserAccount = siteUserAccountList.get(0);
//		
//		BigDecimal totalCurrentAccount = siteUserAccount.getCurrentAccount();
//		//购买未转入金额
//		BigDecimal totalCurrent = siteUserCurrentService.queryTotalCurrentByUserId(String.valueOf(siteUser.getUserId()));
//		if(totalCurrent !=null){
//			totalCurrentAccount = totalCurrentAccount.add(totalCurrent);
//		}
//		
//		data = ((Map<String, Object>) result.get("data"));
//		data.put("totalAsset", String.valueOf(siteUserAccount.getTotalAsset().setScale(2)));
//		
//		data.put("frozenAmount", String.valueOf(siteUserAccount.getFrozenAccount().setScale(2)));
//		
//		data.put("currentAmount", String.valueOf(totalCurrentAccount.setScale(2)));
//		
//		data.put("fixExpectAmount", String.valueOf(siteUserAccount.getFixedExpectIncome().setScale(2)));
//		data.put("fixProjectExpectAmount", String.valueOf(siteUserAccount.getFixedExpectPrinciple().add(siteUserAccount.getFixedExpectInterest()).setScale(2)));
//		data.put("fixPlatformExpectAmount", String.valueOf(siteUserAccount.getFixedExpectAddInterest().setScale(2)));
//		data.put("fixCouponExpectAmount", String.valueOf(siteUserAccount.getFixedExpectCoupon().setScale(2)));
//		data.put("fixEnvelopExpectAmount", String.valueOf(siteUserAccount.getFixedExpectTip().setScale(2)));
//		return result;
//	}
//	
//	@LogInfo(logType=LogType.查询,operationContent="我的红包列表")
//	@RequestMapping("my_envelop_list")
//	@ResponseBody
//	public Object myEnvelopList(HttpServletRequest request){
//		Map<String, Object> result = MapUtil.getRetMap();
//		Map<String, Object> data = new HashMap<String, Object>();
//		result.put("data", data);
//		
//		SiteUser siteUser = (SiteUser) request.getSession().getAttribute("siteUser");
//		//会话过期
//		if (siteUser == null) {
//			result.put("result_code", MapUtil.INTF_ERR_CODE_416);
//			result.put("result_info", "会话过期");
//			return result;
//		}
//		
//		SiteUserEnvelopExample siteUserEnvelopExample = new SiteUserEnvelopExample();
//		siteUserEnvelopExample.createCriteria().andUserIdEqualTo(siteUser.getUserId().longValue()).andStatusEqualTo(0);
//		int count1 = siteUserEnvelopService.countByExample(siteUserEnvelopExample);
//		siteUserEnvelopExample.clear();
//		siteUserEnvelopExample.createCriteria().andUserIdEqualTo(siteUser.getUserId().longValue()).andStatusEqualTo(1);
//		int count2 = siteUserEnvelopService.countByExample(siteUserEnvelopExample);
//		siteUserEnvelopExample.clear();
//		siteUserEnvelopExample.createCriteria().andUserIdEqualTo(siteUser.getUserId().longValue()).andStatusEqualTo(2);
//		int count3 = siteUserEnvelopService.countByExample(siteUserEnvelopExample);
//		
//		int currentPage = 1;
//		int pageSize = 5;
//		int status = -1;
//		int productType = -1;
//		String currentPageStr = request.getParameter("currentPage");
//		String pageSizeStr = request.getParameter("pageSize");
//		String statusStr = request.getParameter("status");
//		String productTypeStr = request.getParameter("productType");
//		try {
//			if (StringUtils.isNotBlank(currentPageStr)) {
//				currentPage = Integer.parseInt(currentPageStr);
//			}
//			if (StringUtils.isNotBlank(pageSizeStr)) {
//				pageSize = Integer.parseInt(pageSizeStr);
//			}
//			if (StringUtils.isNotBlank(statusStr)) {
//				status = Integer.parseInt(statusStr);
//			}
//			if (StringUtils.isNotBlank(productTypeStr)) {
//				productType = Integer.parseInt(productTypeStr);
//			}
//		} catch (Exception e) {
//			e.printStackTrace();
//		}
//		if (currentPage < 1) {
//			currentPage = 1;
//		}
//		if (pageSize < 0) {
//			pageSize = 5;
//		}
//		if (status >= 0) {
//			pageSize = 100;
//		}
//		
//		List<Object> envelopList = new ArrayList<Object>();
//		Page<SiteUserEnvelop> page = PageHelper.startPage(currentPage, pageSize, true);
//		siteUserEnvelopExample = new SiteUserEnvelopExample();
//		com.hjb.service.domain.siteuserenvelop.SiteUserEnvelopExample.Criteria criteria = siteUserEnvelopExample.createCriteria();
//		criteria.andUserIdEqualTo(siteUser.getUserId().longValue());
//		if (status >= 0) {
//			criteria.andStatusEqualTo(status);
//		}
//		if (productType > 0) {
//			criteria.andProductTypeEqualTo(productType);
//		}
//		siteUserEnvelopExample.setOrderByClause("status asc, begin_time desc");
//		List<SiteUserEnvelop> siteUserEnvelopList = siteUserEnvelopService.selectByExample(siteUserEnvelopExample);
//		if (siteUserEnvelopList != null && siteUserEnvelopList.size() > 0) {
//			for (SiteUserEnvelop siteUserEnvelop : siteUserEnvelopList) {
//				Map<String, Object> map = new HashMap<String, Object>();
//				map.put("tid", siteUserEnvelop.getId());
//				map.put("status", siteUserEnvelop.getStatus());
//				map.put("name", siteUserEnvelop.getName());
//				map.put("amount", String.valueOf(siteUserEnvelop.getAmount()));
//				map.put("minInvestAmount", siteUserEnvelop.getMinInvestAmount() == null ? "0.00" : String.valueOf(siteUserEnvelop.getMinInvestAmount()));
//				map.put("minAmount", siteUserEnvelop.getMinInvestAmount() == null ? "0.00" : String.valueOf(siteUserEnvelop.getMinInvestAmount()));
//				
//				String limitInvestProject = "不限";
//				int type = 1;
//				if (siteUserEnvelop.getProductType() != null) {
//					if (siteUserEnvelop.getProductType() == 1) {
//						limitInvestProject = "活期";
//					}else {
//						limitInvestProject = "定期";
//					}
//					type = siteUserEnvelop.getProductType();
//				}
//				map.put("limitInvestProject", limitInvestProject);
//				map.put("productType", type);
//				
//				String minInvestTime = "不限";
//				String maxInvestTime = "不限";
//				if (siteUserEnvelop.getInvestTimeType() != null) {
//					String investTimeType = "";
//					if (siteUserEnvelop.getInvestTimeType() == 0) {
//						investTimeType = "天";
//					}else {
//						investTimeType = "月";
//					}
//					if (siteUserEnvelop.getMinInvestTime() != null) {
//						minInvestTime = siteUserEnvelop.getMinInvestTime() + investTimeType;
//					}
//					if (siteUserEnvelop.getMaxInvestTime() != null) {
//						maxInvestTime = siteUserEnvelop.getMaxInvestTime() + investTimeType;
//					}
//				}
//				map.put("minInvestTime", minInvestTime);
//				map.put("maxInvestTime", maxInvestTime);
//				
//				map.put("beginTime", DateUtil.format(siteUserEnvelop.getBeginTime(), DateUtil.FORMAT_LONG));
//				String endTime = "不限";
//				if (siteUserEnvelop.getEndTime() != null) {
//					endTime = DateUtil.format(siteUserEnvelop.getEndTime(), DateUtil.FORMAT_LONG);
//				}
//				map.put("endTime", endTime);
//				envelopList.add(map);
//			}
//		}
//		
//		data = ((Map<String, Object>) result.get("data"));
//		data.put("currentPage", currentPage);
//		data.put("pageSize", pageSize);
//		data.put("totalPage", page.getPages());
//		data.put("count1", count1);
//		data.put("count2", count2);
//		data.put("count3", count3);
//		data.put("list", envelopList);
//		
//		return result;
//	}
//	
//	@LogInfo(logType=LogType.查询,operationContent="我的加息券列表")
//	@RequestMapping("my_coupon_list")
//	@ResponseBody
//	public Object myCouponList(HttpServletRequest request){
//		Map<String, Object> result = MapUtil.getRetMap();
//		Map<String, Object> data = new HashMap<String, Object>();
//		result.put("data", data);
//		
//		SiteUser siteUser = (SiteUser) request.getSession().getAttribute("siteUser");
//		//会话过期
//		if (siteUser == null) {
//			result.put("result_code", MapUtil.INTF_ERR_CODE_416);
//			result.put("result_info", "会话过期");
//			return result;
//		}
//		
//		SiteUserCouponExample siteUserCouponExample = new SiteUserCouponExample();
//		siteUserCouponExample.createCriteria().andUserIdEqualTo(siteUser.getUserId().longValue()).andStatusEqualTo(0);
//		int count1 = siteUserCouponService.countByExample(siteUserCouponExample);
//		siteUserCouponExample.clear();
//		siteUserCouponExample.createCriteria().andUserIdEqualTo(siteUser.getUserId().longValue()).andStatusEqualTo(1);
//		int count2 = siteUserCouponService.countByExample(siteUserCouponExample);
//		siteUserCouponExample.clear();
//		siteUserCouponExample.createCriteria().andUserIdEqualTo(siteUser.getUserId().longValue()).andStatusEqualTo(2);
//		int count3 = siteUserCouponService.countByExample(siteUserCouponExample);
//		
//		int currentPage = 1;
//		int pageSize = 5;
//		int status = -1;
//		int productType = -1;
//		String currentPageStr = request.getParameter("currentPage");
//		String pageSizeStr = request.getParameter("pageSize");
//		String statusStr = request.getParameter("status");
//		String productTypeStr = request.getParameter("productType");
//		try {
//			if (StringUtils.isNotBlank(currentPageStr)) {
//				currentPage = Integer.parseInt(currentPageStr);
//			}
//			if (StringUtils.isNotBlank(pageSizeStr)) {
//				pageSize = Integer.parseInt(pageSizeStr);
//			}
//			if (StringUtils.isNotBlank(statusStr)) {
//				status = Integer.parseInt(statusStr);
//			}
//			if (StringUtils.isNotBlank(productTypeStr)) {
//				productType = Integer.parseInt(productTypeStr);
//			}
//		} catch (Exception e) {
//			e.printStackTrace();
//		}
//		if (currentPage < 1) {
//			currentPage = 1;
//		}
//		if (pageSize < 0) {
//			pageSize = 5;
//		}
//		if (status >= 0) {
//			pageSize = 100;
//		}
//		
//		List<Object> couponList = new ArrayList<Object>();
//		Page<SiteUserCoupon> page = PageHelper.startPage(currentPage, pageSize, true);
//		siteUserCouponExample = new SiteUserCouponExample();
//		com.hjb.service.domain.siteusercoupon.SiteUserCouponExample.Criteria criteria = siteUserCouponExample.createCriteria();
//		criteria.andUserIdEqualTo(siteUser.getUserId().longValue());
//		if (status >= 0) {
//			criteria.andStatusEqualTo(status);
//		}
//		if (productType > 0) {
//			criteria.andProductTypeEqualTo(productType);
//		}
//		siteUserCouponExample.setOrderByClause("status asc, begin_time desc");
//		List<SiteUserCoupon> siteUserCouponList = siteUserCouponService.selectByExample(siteUserCouponExample);
//		if (siteUserCouponList != null && siteUserCouponList.size() > 0) {
//			for (SiteUserCoupon siteUserCoupon : siteUserCouponList) {
//				Map<String, Object> map = new HashMap<String, Object>();
//				map.put("tid", siteUserCoupon.getId());
//				map.put("status", siteUserCoupon.getStatus());
//				map.put("name", siteUserCoupon.getName());
//				map.put("amount", String.valueOf(siteUserCoupon.getAmount()));
//				
//				String limitInvestProject = "不限";
//				int type = 1;
//				if (siteUserCoupon.getProductType() != null) {
//					if (siteUserCoupon.getProductType() == 1) {
//						limitInvestProject = "活期";
//					}else {
//						limitInvestProject = "定期";
//					}
//					type = siteUserCoupon.getProductType();
//				}
//				map.put("limitInvestProject", limitInvestProject);
//				map.put("productType", type);
//				
//				String minInvestAmount = "不限";
//				String maxInvestAmount = "不限";
//				if (siteUserCoupon.getMinInvestAmount() != null) {
//					minInvestAmount = siteUserCoupon.getMinInvestAmount() + "元";
//				}
//				if (siteUserCoupon.getMaxInvestAmount() != null) {
//					maxInvestAmount = siteUserCoupon.getMaxInvestAmount() + "元";
//				}
//				map.put("minInvestAmount", minInvestAmount);
//				map.put("maxInvestAmount", maxInvestAmount);
//				map.put("minAmount", siteUserCoupon.getMinInvestAmount());
//				map.put("maxAmount", siteUserCoupon.getMaxInvestAmount());
//				
//				String minInvestTime = "不限";
//				String maxInvestTime = "不限";
//				if (siteUserCoupon.getInvestTimeType() != null) {
//					String investTimeType = "";
//					if (siteUserCoupon.getInvestTimeType() == 0) {
//						investTimeType = "天";
//					}else {
//						investTimeType = "月";
//					}
//					if (siteUserCoupon.getMinInvestTime() != null) {
//						minInvestTime = siteUserCoupon.getMinInvestTime() + investTimeType;
//					}
//					if (siteUserCoupon.getMaxInvestTime() != null) {
//						maxInvestTime = siteUserCoupon.getMaxInvestTime() + investTimeType;
//					}
//				}
//				map.put("minInvestTime", minInvestTime);
//				map.put("maxInvestTime", maxInvestTime);
//				
//				map.put("beginTime", DateUtil.format(siteUserCoupon.getBeginTime(), DateUtil.FORMAT_LONG));
//				String endTime = "不限";
//				if (siteUserCoupon.getEndTime() != null) {
//					endTime = DateUtil.format(siteUserCoupon.getEndTime(), DateUtil.FORMAT_LONG);
//				}
//				map.put("endTime", endTime);
//				couponList.add(map);
//			}
//		}
//		
//		data = ((Map<String, Object>) result.get("data"));
//		data.put("currentPage", currentPage);
//		data.put("pageSize", pageSize);
//		data.put("totalPage", page.getPages());
//		data.put("count1", count1);
//		data.put("count2", count2);
//		data.put("count3", count3);
//		data.put("list", couponList);
//		
//		return result;
//	}
//	
//	@LogInfo(logType=LogType.查询,operationContent="交易记录")
//	@RequestMapping("trade_record_list")
//	@ResponseBody
//	public Object tradeRecord(HttpServletRequest request){
//		Map<String, Object> result = MapUtil.getRetMap();
//		Map<String, Object> data = new HashMap<String, Object>();
//		result.put("data", data);
//		
//		SiteUser siteUser = (SiteUser) request.getSession().getAttribute("siteUser");
//		//会话过期
//		if (siteUser == null) {
//			result.put("result_code", MapUtil.INTF_ERR_CODE_416);
//			result.put("result_info", "会话过期");
//			return result;
//		}
//		
//		int currentPage = 1;
//		int pageSize = 5;
//		int type = -1;
//		String currentPageStr = request.getParameter("currentPage");
//		String pageSizeStr = request.getParameter("pageSize");
//		String typeStr = request.getParameter("type");
//		try {
//			if (StringUtils.isNotBlank(currentPageStr)) {
//				currentPage = Integer.parseInt(currentPageStr);
//			}
//			if (StringUtils.isNotBlank(pageSizeStr)) {
//				pageSize = Integer.parseInt(pageSizeStr);
//			}
//			if (StringUtils.isNotBlank(typeStr)) {
//				type = Integer.parseInt(typeStr);
//			}
//		} catch (Exception e) {
//			e.printStackTrace();
//		}
//		if (currentPage < 1) {
//			currentPage = 1;
//		}
//		if (pageSize < 0) {
//			pageSize = 5;
//		}
//		if (type >= 0) {
//			pageSize = 100;
//		}
//		
//		List<Object> list = new ArrayList<Object>();
//		Page<SiteUserAccountLog> page = PageHelper.startPage(currentPage, pageSize, true);
//		SiteUserAccountLogExample siteUserAccountLogExample = new SiteUserAccountLogExample();
//		if (type >= 0) {
//			siteUserAccountLogExample.createCriteria().andUserIdEqualTo(siteUser.getUserId()).andAcctTypeEqualTo(type);
//		}else {
//			siteUserAccountLogExample.createCriteria().andUserIdEqualTo(siteUser.getUserId());
//		}
//		siteUserAccountLogExample.setOrderByClause("create_time desc");
//		List<SiteUserAccountLog> siteUserAccountLogList = siteUserAccountLogService.selectByExample(siteUserAccountLogExample);
//		if (siteUserAccountLogList != null && siteUserAccountLogList.size() > 0) {
//			for (SiteUserAccountLog siteUserAccountLog : siteUserAccountLogList) {
//				Map<String, Object> map = new HashMap<String, Object>();
//				map.put("tid", siteUserAccountLog.getId());
//				map.put("type", siteUserAccountLog.getAcctType());
//				String name = "";
//				switch (siteUserAccountLog.getAcctType()) {
//				case 1:
//					name = "银行卡投资";
//					break;
//				case 2:
//					name = "定期回款至银行卡";
//					break;
//				case 3:
//					name = "活期赎回";
//					break;
//				case 4:
//					name = "活期投资";
//					break;
//				case 5:
//					name = "回款复投";
//					break;
//				case 6:
//					name = "体验金收益";
//					break;
//				case 7:
//					name = "活期收益";
//					break;
//				case 8:
//					name = "活期加息券收益";
//					break;
//				case 9:
//					name = "定期回款收益发放";
//					break;
//				case 10:
//					name = "定期回款";
//					break;
//
//				default:
//					break;
//				}
//				map.put("name", name);
//				map.put("createTime", DateUtil.format(siteUserAccountLog.getCreateTime(), DateUtil.FORMAT_LONG));
//				map.put("status", siteUserAccountLog.getStatus());
//				String statusName = "";
//				switch (siteUserAccountLog.getStatus()) {
//				case 1:
//					statusName = "成功";
//					break;
//				case 2:
//					statusName = "失败";
//					break;
//				case 3:
//					statusName = "处理中";
//					break;
//
//				default:
//					break;
//				}
//				map.put("statusName", statusName);
//				map.put("orderId", siteUserAccountLog.getOrderId());
//				map.put("amount", siteUserAccountLog.getAmount() != null ? String.valueOf(siteUserAccountLog.getAmount().setScale(2)) : "");
//				map.put("finalAmount", siteUserAccountLog.getFinalAmount() != null ? String.valueOf(siteUserAccountLog.getFinalAmount().setScale(2)) : "");
//				map.put("fee", siteUserAccountLog.getFee() != null ? String.valueOf(siteUserAccountLog.getFee().setScale(2)) : "");
//				map.put("info", siteUserAccountLog.getInfo() != null ? siteUserAccountLog.getInfo() : "");
//				map.put("inMsg", siteUserAccountLog.getInMsg() != null ? siteUserAccountLog.getInMsg() : "");
//				map.put("outMsg", siteUserAccountLog.getOutMsg() != null ? siteUserAccountLog.getOutMsg() : "");
//				list.add(map);
//			}
//		}
//		
//		data = ((Map<String, Object>) result.get("data"));
//		data.put("currentPage", currentPage);
//		data.put("pageSize", pageSize);
//		data.put("totalPage", page.getPages());
//		data.put("list", list);
//		return result;
//	}
//	
//	@LogInfo(logType=LogType.查询,operationContent="是否登录")
//	@RequestMapping("is_login")
//	@ResponseBody
//	public Object isLogin(HttpServletRequest request){
//		Map<String, Object> result = MapUtil.getRetMap();
//		Map<String, Object> data = new HashMap<String, Object>();
//		result.put("data", data);
//		
//		int isLogin = 0;
//		SiteUser siteUser = (SiteUser) request.getSession().getAttribute("siteUser");
//		//会话过期
//		if (siteUser == null) {
//			String userId = request.getParameter("userId");
//			if (userId != null && !"".equals(userId)) {
//				isLogin = 1;
//			}
//		}else {
//			isLogin = 1;
//		}
//		data = ((Map<String, Object>) result.get("data"));
//		data.put("isLogin", isLogin);
//		return result;
//	}
//	
//	@RequestMapping("loginOut")
//	@ResponseBody
//	public Object loginOut(HttpServletRequest request){
//		Map<String, Object> result = MapUtil.getRetMap();
//		request.getSession().invalidate();
//		return result;
//	}
//	
//}
